matmul Interface

public interface matmul

Module Procedures

private function csr_mtx_mtx_mult(a, b) result(rst)

Multiplies two CSR matrices together.

Arguments

Type IntentOptional Attributes Name
class(csr_matrix), intent(in) :: a

The first CSR matrix.

class(csr_matrix), intent(in) :: b

The second CSR matrix.

Return Value type(csr_matrix)

The resulting CSR matrix.

private function csr_mtx_vec_mult(a, b) result(rst)

Multiplies a CSR matrix by a vector.

Arguments

Type IntentOptional Attributes Name
class(csr_matrix), intent(in) :: a

The CSR matrix.

real(kind=real64), intent(in), dimension(:) :: b

The vector.

Return Value real(kind=real64), allocatable, dimension(:)

The resulting vector.